package com.yike.user.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yike.user.entity.PlatformMenu;

import com.yike.user.param.PlatformMenuPageParam;
import com.yike.user.vo.PlatformMenuVo;
import org.apache.ibatis.annotations.Mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import java.util.List;

/**
 * 平台菜单 Mapper 接口
 *
 * @author Sakura
 * @since 2024-10-29
 */
@Mapper
public interface PlatformMenuMapper extends BaseMapper<PlatformMenu> {

    PlatformMenu getPlatformMenu(@Param("id") Long id);

    List<PlatformMenu> getPlatformMenus(@Param("roleId") Long roleId);

    List<String> getButtonPermissions(@Param("roleId") Long roleId);

    List<Long> getMenuIds(@Param("roleId") Long roleId);

    PlatformMenuVo getPlatformMenuVo(@Param("id") Long id);

    IPage<PlatformMenuVo> getPlatformMenuList(@Param("page") Page page, @Param("param") PlatformMenuPageParam param);

}
